﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using digit.Core;
using SMS.ServiceManager;
using SMS.Helper;
using SMS.Charts;
using SMS.UserManager;

public partial class Modules_ListStatServiceID : WebControlBase
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (ClientState.MemberInfo.UserType == 0)
        {
            //Nothing
        }
        else
            Response.Redirect("Default.aspx?module=Warning");
    }

    protected void btnStat_Click(object sender, EventArgs e)
    {
        this.BindStat(this.ddlServicID.SelectedValue);
    }

    protected void BindStat(string ServiceID)
    {
        try
        {
            FusionLineChart lineChart = new FusionLineChart();

            if (ddlMsgType.SelectedValue.ToLower() == "mo")
                lineChart.caption = "Thống kê tin đến, đầu số " + ServiceID.ToUpper();
            else if (ddlMsgType.SelectedValue.ToLower() == "mt")
                lineChart.caption = "Thống kê tin gửi đi, đầu số " + ServiceID.ToUpper();
            else if (ddlMsgType.SelectedValue.ToLower() == "cdr")
                lineChart.caption = "Thống kê tin tính phí, đầu số " + ServiceID.ToUpper();

            string chartHtml = lineChart.CreateSetElement(BuildData(ServiceID), FusionLineChart.Line2D, divLineChart.ClientID, false, "", "name", "value", "text", "id", "#", true, 800, 600);
            divLineChart.InnerHtml = chartHtml;
        }
        catch { }
    }

    private DataTable BuildData(string ServiceID)
    {
        DataTable dt = null;

        if (ddlMsgType.SelectedValue.ToLower() == "mo")
            dt = MessageInManager.StatisticMsgIn_ByServiceID(ServiceID);

        else if (this.ddlMsgType.SelectedValue.ToLower() == "mt")
            dt = MessageOutManager.StatisticMsgOut_ByServiceID(ServiceID);

        else if (this.ddlMsgType.SelectedValue.ToLower() == "cdr")
            dt = MessageOutManager.StatisticMsgCdr_ByServiceID(ServiceID);

        if (dt != null && dt.Rows.Count > 0)
        {
            DataTable dtData = new DataTable();

            dtData.Columns.Add("name");
            dtData.Columns.Add("value");
            dtData.Columns.Add("text");
            dtData.Columns.Add("id");

            DataRow drData = null;

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                drData = dtData.NewRow();

                drData["name"] = dt.Rows[i]["RequestTime"].ToString();
                drData["value"] = dt.Rows[i]["RowNo"].ToString();
                drData["text"] = "Tổng số tin : " + dt.Rows[i]["RowNo"].ToString();
                drData["id"] = "";

                dtData.Rows.Add(drData);
            }

            return dtData;
        }
        else
        {
            this.lblError.Text = "Hiện tại chưa có số liệu thống kê tin.";
        }
        return null;
    }
}
